﻿using System.Windows;
using WpfDryIocDemo.ViewModels;

namespace WpfDryIocDemo
{
    public partial class MainWindow : Window
    {
        // 持有 ViewModel 实例（由 DryIOC 注入）
        private readonly MainViewModel _viewModel;

        // 构造函数：通过 DryIOC 注入 MainViewModel（依赖链自动解析）
        public MainWindow(MainViewModel viewModel)
        {
            InitializeComponent();
            _viewModel = viewModel;
            DataContext = _viewModel; // 绑定 DataContext，让界面能访问 ViewModel 的属性和方法
        }

        // 按钮点击事件：调用 ViewModel 的对应方法
        private void Button_Click_LoadUsers(object sender, RoutedEventArgs e)
        {
            _viewModel.LoadUsers();
        }

        private void Button_Click_AddUser(object sender, RoutedEventArgs e)
        {
            _viewModel.AddUser();
        }

        private void Button_Click_UpdateUser(object sender, RoutedEventArgs e)
        {
            _viewModel.UpdateUser();
        }

        private void Button_Click_DeleteUser(object sender, RoutedEventArgs e)
        {
            _viewModel.DeleteUser();
        }
    }
}
